﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using AutoR.Models;
using AutoR.Services;
using Prism.Mvvm;
using Prism.Navigation;
using Prism.Services;

namespace AutoR.ViewModels
{
	// Token: 0x02000070 RID: 112
	public class StatisticsViewModel : BindableBase, INavigationAware, INavigatedAware, INavigatingAware
	{
		// Token: 0x17000055 RID: 85
		// (get) Token: 0x060001B0 RID: 432 RVA: 0x000442C2 File Offset: 0x000424C2
		private INavigationService NavigationService { get; }

		// Token: 0x17000056 RID: 86
		// (get) Token: 0x060001B1 RID: 433 RVA: 0x000442CA File Offset: 0x000424CA
		private IPageDialogService PageDialogService { get; }

		// Token: 0x17000057 RID: 87
		// (get) Token: 0x060001B2 RID: 434 RVA: 0x000408F6 File Offset: 0x0003EAF6
		public GameData Game
		{
			get
			{
				return Runtime.Game;
			}
		}

		// Token: 0x17000058 RID: 88
		// (get) Token: 0x060001B3 RID: 435 RVA: 0x000442D2 File Offset: 0x000424D2
		// (set) Token: 0x060001B4 RID: 436 RVA: 0x000442DC File Offset: 0x000424DC
		public List<StatNewShip> StatNewShip
		{
			[CompilerGenerated]
			get
			{
				return this.<StatNewShip>k__BackingField;
			}
			[CompilerGenerated]
			set
			{
				if (object.Equals(this.<StatNewShip>k__BackingField, value))
				{
					return;
				}
				this.<StatNewShip>k__BackingField = value;
				this.OnPropertyChanged(<>PropertyChangedEventArgs.StatNewShip);
			}
		}

		// Token: 0x17000059 RID: 89
		// (get) Token: 0x060001B5 RID: 437 RVA: 0x0004430C File Offset: 0x0004250C
		// (set) Token: 0x060001B6 RID: 438 RVA: 0x00044314 File Offset: 0x00042514
		public List<StatSkipWar> StatSkipWar
		{
			[CompilerGenerated]
			get
			{
				return this.<StatSkipWar>k__BackingField;
			}
			[CompilerGenerated]
			set
			{
				if (object.Equals(this.<StatSkipWar>k__BackingField, value))
				{
					return;
				}
				this.<StatSkipWar>k__BackingField = value;
				this.OnPropertyChanged(<>PropertyChangedEventArgs.StatSkipWar);
			}
		}

		// Token: 0x1700005A RID: 90
		// (get) Token: 0x060001B7 RID: 439 RVA: 0x00044344 File Offset: 0x00042544
		// (set) Token: 0x060001B8 RID: 440 RVA: 0x0004434C File Offset: 0x0004254C
		public List<StatFoundEnemy> FoundEnemyStats
		{
			[CompilerGenerated]
			get
			{
				return this.<FoundEnemyStats>k__BackingField;
			}
			[CompilerGenerated]
			set
			{
				if (object.Equals(this.<FoundEnemyStats>k__BackingField, value))
				{
					return;
				}
				this.<FoundEnemyStats>k__BackingField = value;
				this.OnPropertyChanged(<>PropertyChangedEventArgs.FoundEnemyStats);
			}
		}

		// Token: 0x1700005B RID: 91
		// (get) Token: 0x060001B9 RID: 441 RVA: 0x0004437C File Offset: 0x0004257C
		// (set) Token: 0x060001BA RID: 442 RVA: 0x00044384 File Offset: 0x00042584
		public List<StatDealNode> ShipDealStat
		{
			[CompilerGenerated]
			get
			{
				return this.<ShipDealStat>k__BackingField;
			}
			[CompilerGenerated]
			set
			{
				if (object.Equals(this.<ShipDealStat>k__BackingField, value))
				{
					return;
				}
				this.<ShipDealStat>k__BackingField = value;
				this.OnPropertyChanged(<>PropertyChangedEventArgs.ShipDealStat);
			}
		}

		// Token: 0x1700005C RID: 92
		// (get) Token: 0x060001BB RID: 443 RVA: 0x000443B4 File Offset: 0x000425B4
		// (set) Token: 0x060001BC RID: 444 RVA: 0x000443BC File Offset: 0x000425BC
		public List<StatBuild> StatBuild
		{
			[CompilerGenerated]
			get
			{
				return this.<StatBuild>k__BackingField;
			}
			[CompilerGenerated]
			set
			{
				if (object.Equals(this.<StatBuild>k__BackingField, value))
				{
					return;
				}
				this.<StatBuild>k__BackingField = value;
				this.OnPropertyChanged(<>PropertyChangedEventArgs.StatBuild);
			}
		}

		// Token: 0x1700005D RID: 93
		// (get) Token: 0x060001BD RID: 445 RVA: 0x000443EC File Offset: 0x000425EC
		// (set) Token: 0x060001BE RID: 446 RVA: 0x000443F4 File Offset: 0x000425F4
		public List<StatEquipment> StatEquipment
		{
			[CompilerGenerated]
			get
			{
				return this.<StatEquipment>k__BackingField;
			}
			[CompilerGenerated]
			set
			{
				if (object.Equals(this.<StatEquipment>k__BackingField, value))
				{
					return;
				}
				this.<StatEquipment>k__BackingField = value;
				this.OnPropertyChanged(<>PropertyChangedEventArgs.StatEquipment);
			}
		}

		// Token: 0x060001BF RID: 447 RVA: 0x00044424 File Offset: 0x00042624
		public StatisticsViewModel(INavigationService navigationService, IPageDialogService pageDialogService)
		{
			this.NavigationService = navigationService;
			this.PageDialogService = pageDialogService;
			this.StatNewShip = Runtime.Statistics.GetCollection<StatNewShip>().FindAll().ToList<StatNewShip>();
			this.StatSkipWar = Runtime.Statistics.GetCollection<StatSkipWar>().FindAll().ToList<StatSkipWar>();
			this.FoundEnemyStats = Runtime.Statistics.GetCollection<StatFoundEnemy>().FindAll().ToList<StatFoundEnemy>();
			this.ShipDealStat = Runtime.Statistics.GetCollection<StatDealNode>().FindAll().ToList<StatDealNode>();
			this.StatBuild = Runtime.Statistics.GetCollection<StatBuild>().FindAll().ToList<StatBuild>();
			this.StatEquipment = Runtime.Statistics.GetCollection<StatEquipment>().FindAll().ToList<StatEquipment>();
		}

		// Token: 0x060001C0 RID: 448 RVA: 0x0004067F File Offset: 0x0003E87F
		public void OnNavigatedFrom(INavigationParameters parameters)
		{
		}

		// Token: 0x060001C1 RID: 449 RVA: 0x0004067F File Offset: 0x0003E87F
		public void OnNavigatedTo(INavigationParameters parameters)
		{
		}

		// Token: 0x060001C2 RID: 450 RVA: 0x0004067F File Offset: 0x0003E87F
		public void OnNavigatingTo(INavigationParameters parameters)
		{
		}
	}
}
